package com.jgzx.constant.payment;

import cn.hutool.core.util.StrUtil;

/**
 * 应付类型
 * @author libo
 * @date 2021/7/19 13:50
 */
public enum PayableBillTypeEnum {
    /** QCYF【期初应付】 */
    OPENING_PAYABLE("QCYF", "期初应付"),
    /** QTYF【其它应付】 */
    OTHER_PAYABLE("QTYF", "其它应付"),
    /** CGYF【采购应付】 */
    PURCHASE_PAYABLE("CGYF", "采购应付"),
    ;
    private final String value;
    private final String showName;

    /**
     * @param value 值
     * @param showName 显示名称
     */
    PayableBillTypeEnum(String value, String showName){
        this.value = value;
        this.showName = showName;
    }

    /**
     * 通过单据类型值获取枚举对象
     * @param value 单据类别值
     * @return 单据类型枚举
     */
    public static PayableBillTypeEnum getPayableBillTypeByValue(String value){
        for(PayableBillTypeEnum payableBillType : PayableBillTypeEnum.values()){
            if(StrUtil.equals(value, payableBillType.value())){
                return payableBillType;
            }
        }
        return null;
    }

    public String value() {
        return this.value;
    }

    public String showName() {
        return this.showName;
    }
}
